import request from "@/utils/request";
// const MENU_BASE_URL = "/api/v1/menus";
const MENU_BASE_URL = "/menus";

const MenuAPI = {
  /** 获取当前用户的路由列表 */
  getRoutes() {
    // const mockData = [
    //   {
    //     id: "9a8faa1694b749928181b0a91116a3ba",
    //     createdAt: "2025-09-23T23:27:59.562+08:00",
    //     updatedAt: "2025-09-23T23:27:59.562+08:00",
    //     deletedAt: null,
    //     name: "本车理算员理算",
    //     parentId: "4285a040f1e2491fa70937772fcdd0fe",
    //     type: 1,
    //     routeName: "AdjusterCarAdjusts",
    //     routePath: "adjuster-car-adjusts",
    //     component: "coordinate-manage/claims-adjuster/adjuster-car-adjusts/index",
    //     perm: "adjuster-car-adjusts",
    //     visible: 1,
    //     sort: 1,
    //     icon: "tree",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "68214405bcac44899bc23e3165b97392",
    //     createdAt: "2025-09-23T21:45:30.997+08:00",
    //     updatedAt: "2025-09-23T21:45:30.997+08:00",
    //     deletedAt: null,
    //     name: "统筹出险管理",
    //     parentId: "4c555fb2b0c941a7a4b84e195f3ddddc",
    //     type: 2,
    //     routeName: "",
    //     routePath: "coordinate",
    //     component: "",
    //     perm: "coordinate",
    //     visible: 1,
    //     sort: 1,
    //     icon: "client",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "71300ba6185347c1b1b09c25428cc5e1",
    //     createdAt: "2025-09-19T18:53:12.032+08:00",
    //     updatedAt: "2025-09-23T20:14:23.851+08:00",
    //     deletedAt: null,
    //     name: "菜单管理",
    //     parentId: "5d0af18d93cb4df7a4fc68c1dfb87e24",
    //     type: 1,
    //     routeName: "SysMenu",
    //     routePath: "menus",
    //     component: "system/menus/index",
    //     perm: "menus",
    //     visible: 1,
    //     sort: 1,
    //     icon: "bell",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "system",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "72c61cc8b4ef466f82ed91122ffb14b1",
    //     createdAt: "2025-09-27T19:24:06.658+08:00",
    //     updatedAt: "2025-09-27T19:31:05.158+08:00",
    //     deletedAt: null,
    //     name: "录入统筹单",
    //     parentId: "377e7c9cb53145538cc060000de5f0b2",
    //     type: 1,
    //     routeName: "EnterCoordinateForm",
    //     routePath: "enter-coordinate-form",
    //     component: "business-manage/coordinate-form-manage/enter-coordinate-form/index",
    //     perm: "enter-coordinate-form",
    //     visible: 1,
    //     sort: 1,
    //     icon: "document",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "5d0af18d93cb4df7a4fc68c1dfb87e24",
    //     createdAt: "2025-09-19T18:53:12.02+08:00",
    //     updatedAt: "2025-09-27T20:31:38.163+08:00",
    //     deletedAt: null,
    //     name: "系统管理",
    //     parentId: "0",
    //     type: 2,
    //     routeName: "",
    //     routePath: "/system",
    //     component: "",
    //     perm: "system",
    //     visible: 1,
    //     sort: 1,
    //     icon: "client",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "system",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "532ad09750994b18a1200e0c33e5d484",
    //     createdAt: "2025-09-28T10:07:47.784+08:00",
    //     updatedAt: "2025-09-28T10:07:47.784+08:00",
    //     deletedAt: null,
    //     name: "客户管理",
    //     parentId: "842beb6ecbbf4830a36ef5db4fe0e3b6",
    //     type: 1,
    //     routeName: "custom-manage",
    //     routePath: "custom-manage",
    //     component: "custom/custom-manage/index",
    //     perm: "custom-manage",
    //     visible: 1,
    //     sort: 1,
    //     icon: "document",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "4d23178b5b4a42049025b18cf8166171",
    //     createdAt: "2025-09-27T15:58:21.222+08:00",
    //     updatedAt: "2025-09-27T16:06:35.492+08:00",
    //     deletedAt: null,
    //     name: "验车码",
    //     parentId: "c26ec6702f1048199bacbc01c58ef65b",
    //     type: 1,
    //     routeName: "CarCode",
    //     routePath: "car-code",
    //     component: "business-manage/car-code/index",
    //     perm: "car-code",
    //     visible: 1,
    //     sort: 1,
    //     icon: "api",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "4c555fb2b0c941a7a4b84e195f3ddddc",
    //     createdAt: "2025-09-23T21:40:10.394+08:00",
    //     updatedAt: "2025-09-23T21:59:26.402+08:00",
    //     deletedAt: null,
    //     name: "统筹出险",
    //     parentId: "0",
    //     type: 2,
    //     routeName: "",
    //     routePath: "/coordinate-manage",
    //     component: "",
    //     perm: "coordinate-manage",
    //     visible: 1,
    //     sort: 1,
    //     icon: "document",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "44951800a3fe41428ec215474d9f6820",
    //     createdAt: "2025-09-23T23:14:58.686+08:00",
    //     updatedAt: "2025-09-23T23:14:58.686+08:00",
    //     deletedAt: null,
    //     name: "三者车定损",
    //     parentId: "fd851a7583404be89adc74c61b318b68",
    //     type: 1,
    //     routeName: "ThreeCarLoss",
    //     routePath: "three-car-loss",
    //     component: "coordinate-manage/loss-manage/three-car-loss/index",
    //     perm: "three-car-loss",
    //     visible: 1,
    //     sort: 1,
    //     icon: "monitor",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "966df12a3df74eda9ca2be63532912b6",
    //     createdAt: "2025-09-22T19:44:25.527+08:00",
    //     updatedAt: "2025-09-22T19:44:25.527+08:00",
    //     deletedAt: null,
    //     name: "首页",
    //     parentId: "0",
    //     type: 1,
    //     routeName: "",
    //     routePath: "/home",
    //     component: "",
    //     perm: "home",
    //     visible: 1,
    //     sort: 1,
    //     icon: "",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "system",
    //     updater: "system",
    //   },
    //   {
    //     id: "aa1ff7014c464236b8bd1f56fd9d28a3",
    //     createdAt: "2025-09-23T22:51:41.974+08:00",
    //     updatedAt: "2025-09-23T22:51:41.974+08:00",
    //     deletedAt: null,
    //     name: "报案信息录入",
    //     parentId: "68214405bcac44899bc23e3165b97392",
    //     type: 1,
    //     routeName: "CaseReportInfoEntry",
    //     routePath: "case-report-info-entry",
    //     component: "coordinate-manage/coordinate/case-report-info-entry/index",
    //     perm: "case-report-info-entry",
    //     visible: 1,
    //     sort: 1,
    //     icon: "",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "2a47e06ccb1f4a3f911e6884f2cd9b7f",
    //     createdAt: "2025-09-28T09:33:28.424+08:00",
    //     updatedAt: "2025-09-28T09:33:28.424+08:00",
    //     deletedAt: null,
    //     name: "保全录入",
    //     parentId: "f0fed2b68cde42bbb07976c30f6ce624",
    //     type: 1,
    //     routeName: "EnterSave",
    //     routePath: "enter-save",
    //     component: "business-manage/save-manage/enter-save/index",
    //     perm: "enter-save",
    //     visible: 1,
    //     sort: 1,
    //     icon: "github",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "237c30ce8f8b46a5aac5cae24a793288",
    //     createdAt: "2025-09-21T20:23:24.248+08:00",
    //     updatedAt: "2025-09-25T22:20:01.494+08:00",
    //     deletedAt: null,
    //     name: "机构管理",
    //     parentId: "8e0e6728641a4e9f8c460ab84a849654",
    //     type: 1,
    //     routeName: "organization",
    //     routePath: "organization",
    //     component: "org/organization/index",
    //     perm: "organization",
    //     visible: 1,
    //     sort: 1,
    //     icon: "dict",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "22fc42bfb5d94995b3523c5e1e285381",
    //     createdAt: "2025-09-27T20:24:48.999+08:00",
    //     updatedAt: "2025-09-27T20:24:48.999+08:00",
    //     deletedAt: null,
    //     name: "统筹单影像资料",
    //     parentId: "da82bcc37ffc482398e7234cba48ff19",
    //     type: 1,
    //     routeName: "VideoDataCoordinateForm",
    //     routePath: "video-data-coordinate-form",
    //     component: "business-manage/video-data-manage/video-data-coordinate-form/index",
    //     perm: "video-data-coordinate-form",
    //     visible: 1,
    //     sort: 1,
    //     icon: "user",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "fd851a7583404be89adc74c61b318b68",
    //     createdAt: "2025-09-23T23:10:18.235+08:00",
    //     updatedAt: "2025-09-23T23:22:48.86+08:00",
    //     deletedAt: null,
    //     name: "定损管理",
    //     parentId: "4c555fb2b0c941a7a4b84e195f3ddddc",
    //     type: 2,
    //     routeName: "",
    //     routePath: "loss-manage",
    //     component: "",
    //     perm: "loss-manage",
    //     visible: 1,
    //     sort: 2,
    //     icon: "captcha",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "b0effb844cf544aea9c313e160e99542",
    //     createdAt: "2025-09-27T19:43:03.521+08:00",
    //     updatedAt: "2025-09-27T19:53:58.487+08:00",
    //     deletedAt: null,
    //     name: "预统筹单",
    //     parentId: "377e7c9cb53145538cc060000de5f0b2",
    //     type: 1,
    //     routeName: "PreCoordinateForm",
    //     routePath: "pre-coordinate-form",
    //     component: "business-manage/coordinate-form-manage/pre-coordinate-form/index",
    //     perm: "pre-coordinate-form",
    //     visible: 1,
    //     sort: 2,
    //     icon: "role",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "8e0e6728641a4e9f8c460ab84a849654",
    //     createdAt: "2025-09-21T17:27:01.126+08:00",
    //     updatedAt: "2025-09-27T20:31:46.438+08:00",
    //     deletedAt: null,
    //     name: "机构",
    //     parentId: "0",
    //     type: 2,
    //     routeName: "",
    //     routePath: "/org",
    //     component: "",
    //     perm: "org",
    //     visible: 1,
    //     sort: 2,
    //     icon: "client",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "7f138c36455a4bc1adf4b93267dc2e0c",
    //     createdAt: "2025-09-25T10:29:53.505+08:00",
    //     updatedAt: "2025-09-25T10:29:53.505+08:00",
    //     deletedAt: null,
    //     name: "全局角色管理",
    //     parentId: "5d0af18d93cb4df7a4fc68c1dfb87e24",
    //     type: 2,
    //     routeName: "",
    //     routePath: "/system/roles",
    //     component: "",
    //     perm: "roles",
    //     visible: 1,
    //     sort: 2,
    //     icon: "",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "system",
    //     updater: "system",
    //   },
    //   {
    //     id: "b3530fe74cc340798af60d7fa106a2c5",
    //     createdAt: "2025-09-23T23:11:52.207+08:00",
    //     updatedAt: "2025-09-23T23:16:23.14+08:00",
    //     deletedAt: null,
    //     name: "本车定损",
    //     parentId: "fd851a7583404be89adc74c61b318b68",
    //     type: 1,
    //     routeName: "CarLoss",
    //     routePath: "car-loss",
    //     component: "coordinate-manage/loss-manage/car-loss/index",
    //     perm: "car-loss",
    //     visible: 1,
    //     sort: 2,
    //     icon: "tree",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "cd76d349135f410ca28eb9b0f58ec0ba",
    //     createdAt: "2025-09-23T21:48:34.08+08:00",
    //     updatedAt: "2025-09-23T23:02:23.708+08:00",
    //     deletedAt: null,
    //     name: "统筹单管理",
    //     parentId: "68214405bcac44899bc23e3165b97392",
    //     type: 1,
    //     routeName: "CoordinateForm",
    //     routePath: "coordinate-form",
    //     component: "coordinate-manage/coordinate/coordinate-form/index",
    //     perm: "coordinate-form",
    //     visible: 1,
    //     sort: 2,
    //     icon: "captcha",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "dce23a8e7bcd4e9eb67f4e178ee42b0f",
    //     createdAt: "2025-09-27T20:30:24.395+08:00",
    //     updatedAt: "2025-09-27T20:30:24.395+08:00",
    //     deletedAt: null,
    //     name: "理赔影像资料",
    //     parentId: "da82bcc37ffc482398e7234cba48ff19",
    //     type: 1,
    //     routeName: "VideoDataClaims",
    //     routePath: "video-data-claims",
    //     component: "business-manage/video-data-manage/video-data-claims/index",
    //     perm: "video-data-claims",
    //     visible: 1,
    //     sort: 2,
    //     icon: "refresh",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "fa85664a89104a389ee06d26fb9b3bc9",
    //     createdAt: "2025-09-25T10:29:53.514+08:00",
    //     updatedAt: "2025-09-25T10:29:53.514+08:00",
    //     deletedAt: null,
    //     name: "用户管理",
    //     parentId: "5d0af18d93cb4df7a4fc68c1dfb87e24",
    //     type: 2,
    //     routeName: "",
    //     routePath: "/system/users",
    //     component: "",
    //     perm: "users",
    //     visible: 1,
    //     sort: 2,
    //     icon: "",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "system",
    //     updater: "system",
    //   },
    //   {
    //     id: "07898ab27fbc42f09dd0aa5eb10dda1b",
    //     createdAt: "2025-09-19T18:53:12.065+08:00",
    //     updatedAt: "2025-09-19T18:53:12.065+08:00",
    //     deletedAt: null,
    //     name: "日志管理",
    //     parentId: "5d0af18d93cb4df7a4fc68c1dfb87e24",
    //     type: 2,
    //     routeName: "",
    //     routePath: "/system/operation_logs",
    //     component: "",
    //     perm: "logs",
    //     visible: 1,
    //     sort: 2,
    //     icon: "",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "system",
    //     updater: "system",
    //   },
    //   {
    //     id: "655d51a3c52944d897e182c0f48d44ff",
    //     createdAt: "2025-09-28T09:40:03.941+08:00",
    //     updatedAt: "2025-09-28T09:41:39.061+08:00",
    //     deletedAt: null,
    //     name: "预保全管理",
    //     parentId: "f0fed2b68cde42bbb07976c30f6ce624",
    //     type: 1,
    //     routeName: "PreSave",
    //     routePath: "pre-save",
    //     component: "business-manage/save-manage/pre-save/index",
    //     perm: "pre-save",
    //     visible: 1,
    //     sort: 2,
    //     icon: "project",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "1346108be24c4f7b843c5d139d5a721d",
    //     createdAt: "2025-09-21T20:24:55.53+08:00",
    //     updatedAt: "2025-09-25T22:22:07.114+08:00",
    //     deletedAt: null,
    //     name: "部门管理",
    //     parentId: "8e0e6728641a4e9f8c460ab84a849654",
    //     type: 1,
    //     routeName: "dept",
    //     routePath: "dept",
    //     component: "org/dept/index",
    //     perm: "org-dept",
    //     visible: 1,
    //     sort: 2,
    //     icon: "document",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "262b4d93288845c785a48d594ac8ee78",
    //     createdAt: "2025-09-28T10:14:33.965+08:00",
    //     updatedAt: "2025-09-28T10:14:38.031+08:00",
    //     deletedAt: null,
    //     name: "参统车辆",
    //     parentId: "842beb6ecbbf4830a36ef5db4fe0e3b6",
    //     type: 1,
    //     routeName: "CoordinateCar",
    //     routePath: "coordinate-car",
    //     component: "custom/coordinate-car/index",
    //     perm: "coordinate-car",
    //     visible: 1,
    //     sort: 2,
    //     icon: "setting",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "2d508cd7a1344fa0b8de0ff9a2f88150",
    //     createdAt: "2025-09-27T16:02:05.263+08:00",
    //     updatedAt: "2025-09-27T19:20:46.782+08:00",
    //     deletedAt: null,
    //     name: "报价管理",
    //     parentId: "c26ec6702f1048199bacbc01c58ef65b",
    //     type: 1,
    //     routeName: "QuotationManage",
    //     routePath: "quotation-manage",
    //     component: "business-manage/quotation-manage/index",
    //     perm: "quotation-manage",
    //     visible: 1,
    //     sort: 2,
    //     icon: "backtop",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "39843ec27a784c0d96d5283236407360",
    //     createdAt: "2025-09-23T23:30:14.433+08:00",
    //     updatedAt: "2025-09-23T23:34:17.269+08:00",
    //     deletedAt: null,
    //     name: "三者理算员理算",
    //     parentId: "4285a040f1e2491fa70937772fcdd0fe",
    //     type: 1,
    //     routeName: "ThreeAdjustersAdjusts",
    //     routePath: "three-adjusters-adjusts",
    //     component: "coordinate-manage/claims-adjuster/three-adjusters-adjusts/index",
    //     perm: "three-adjusters-adjusts",
    //     visible: 1,
    //     sort: 2,
    //     icon: "qq",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "664c07e395df41afb9e9d7361aea14c0",
    //     createdAt: "2025-09-23T23:16:15.997+08:00",
    //     updatedAt: "2025-09-23T23:16:15.997+08:00",
    //     deletedAt: null,
    //     name: "财物定损",
    //     parentId: "fd851a7583404be89adc74c61b318b68",
    //     type: 1,
    //     routeName: "FinanceLoss",
    //     routePath: "finance-loss",
    //     component: "coordinate-manage/loss-manage/finance-loss/index",
    //     perm: "finance-loss",
    //     visible: 1,
    //     sort: 3,
    //     icon: "vue",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "7a3911aab8574b62a88d1c91c30fd7d7",
    //     createdAt: "2025-09-19T18:53:12.056+08:00",
    //     updatedAt: "2025-09-26T19:26:37.595+08:00",
    //     deletedAt: null,
    //     name: "机构用户管理",
    //     parentId: "8e0e6728641a4e9f8c460ab84a849654",
    //     type: 1,
    //     routeName: "User",
    //     routePath: "user",
    //     component: "org/user/index",
    //     perm: "org-user",
    //     visible: 1,
    //     sort: 3,
    //     icon: "user",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "system",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "377e7c9cb53145538cc060000de5f0b2",
    //     createdAt: "2025-09-27T19:22:59.473+08:00",
    //     updatedAt: "2025-09-27T19:22:59.473+08:00",
    //     deletedAt: null,
    //     name: "统筹单管理",
    //     parentId: "c26ec6702f1048199bacbc01c58ef65b",
    //     type: 2,
    //     routeName: "",
    //     routePath: "coordinate-form-manage",
    //     component: "",
    //     perm: "coordinate-form-manage",
    //     visible: 1,
    //     sort: 3,
    //     icon: "backtop",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "2d5545dbada344da846f4a76e93857a8",
    //     createdAt: "2025-09-27T20:33:50.852+08:00",
    //     updatedAt: "2025-09-27T20:33:50.852+08:00",
    //     deletedAt: null,
    //     name: "保全影像资料",
    //     parentId: "da82bcc37ffc482398e7234cba48ff19",
    //     type: 1,
    //     routeName: "VideoDataSave",
    //     routePath: "video-data-save",
    //     component: "business-manage/video-data-manage/video-data-save/index",
    //     perm: "video-data-save",
    //     visible: 1,
    //     sort: 3,
    //     icon: "size",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "177f93d325bb432fbc8ecbab4002b73f",
    //     createdAt: "2025-09-28T09:51:37.777+08:00",
    //     updatedAt: "2025-09-28T09:51:37.777+08:00",
    //     deletedAt: null,
    //     name: "流转中保全",
    //     parentId: "f0fed2b68cde42bbb07976c30f6ce624",
    //     type: 1,
    //     routeName: "CirculationSave",
    //     routePath: "circulation-save",
    //     component: "business-manage/save-manage/circulation-save/index",
    //     perm: "circulation-save",
    //     visible: 1,
    //     sort: 3,
    //     icon: "role",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "5dbe0d7d3fbb4931be37501d7d5176bb",
    //     createdAt: "2025-09-23T23:35:10.56+08:00",
    //     updatedAt: "2025-09-23T23:35:10.56+08:00",
    //     deletedAt: null,
    //     name: "财物理算员理算",
    //     parentId: "4285a040f1e2491fa70937772fcdd0fe",
    //     type: 1,
    //     routeName: "FinancialAdjusterAdjusts",
    //     routePath: "financial-adjuster-adjusts",
    //     component: "coordinate-manage/claims-adjuster/financial-adjuster-adjusts/index",
    //     perm: "financial-adjuster-adjusts",
    //     visible: 1,
    //     sort: 3,
    //     icon: "monitor",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "b2ebfbc61a0f4414a015fa9ece0b9228",
    //     createdAt: "2025-09-23T22:59:09.784+08:00",
    //     updatedAt: "2025-09-23T23:02:19.128+08:00",
    //     deletedAt: null,
    //     name: "勘查改派",
    //     parentId: "68214405bcac44899bc23e3165b97392",
    //     type: 1,
    //     routeName: "ReassignmentSurvey",
    //     routePath: "reassignment-survey",
    //     component: "coordinate-manage/coordinate/reassignment-survey/index",
    //     perm: "reassignment-survey",
    //     visible: 1,
    //     sort: 3,
    //     icon: "gitcode",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "4285a040f1e2491fa70937772fcdd0fe",
    //     createdAt: "2025-09-23T23:22:37.72+08:00",
    //     updatedAt: "2025-09-23T23:22:54.671+08:00",
    //     deletedAt: null,
    //     name: "理算员理算管理",
    //     parentId: "4c555fb2b0c941a7a4b84e195f3ddddc",
    //     type: 2,
    //     routeName: "ClaimsAdjuster",
    //     routePath: "claims-adjuster",
    //     component: "",
    //     perm: "claims-adjuster",
    //     visible: 1,
    //     sort: 3,
    //     icon: "client",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "c26ec6702f1048199bacbc01c58ef65b",
    //     createdAt: "2025-09-27T15:21:38.974+08:00",
    //     updatedAt: "2025-09-27T20:31:52.65+08:00",
    //     deletedAt: null,
    //     name: "业管",
    //     parentId: "0",
    //     type: 2,
    //     routeName: "",
    //     routePath: "/business-manage",
    //     component: "",
    //     perm: "business-manage",
    //     visible: 1,
    //     sort: 3,
    //     icon: "document",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "cbeefaea57ef408e9b0242d32c01a2fb",
    //     createdAt: "2025-09-27T19:54:45.245+08:00",
    //     updatedAt: "2025-09-27T19:54:45.245+08:00",
    //     deletedAt: null,
    //     name: "流转中统筹单",
    //     parentId: "377e7c9cb53145538cc060000de5f0b2",
    //     type: 1,
    //     routeName: "CirculationCoordinateForm",
    //     routePath: "circulation-coordinate-form",
    //     component: "business-manage/coordinate-form-manage/circulation-coordinate-form/index",
    //     perm: "circulation-coordinate-form",
    //     visible: 1,
    //     sort: 3,
    //     icon: "qq",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "5e23eb859c8c4fbf90b0dafa5ce057b8",
    //     createdAt: "2025-09-27T20:06:23.229+08:00",
    //     updatedAt: "2025-09-27T20:06:23.229+08:00",
    //     deletedAt: null,
    //     name: "已生效统筹单",
    //     parentId: "377e7c9cb53145538cc060000de5f0b2",
    //     type: 1,
    //     routeName: "effective-circulation-coordinate-form",
    //     routePath: "EffectiveCirculationCoordinateForm",
    //     component:
    //       "business-manage/coordinate-form-manage/effective-circulation-coordinate-form/index",
    //     perm: "effective-circulation-coordinate-form",
    //     visible: 1,
    //     sort: 4,
    //     icon: "client",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "0e55274c9aca42c7b6522b01f6357bf8",
    //     createdAt: "2025-09-23T23:36:55.898+08:00",
    //     updatedAt: "2025-09-23T23:36:55.898+08:00",
    //     deletedAt: null,
    //     name: "人伤理算管理",
    //     parentId: "4285a040f1e2491fa70937772fcdd0fe",
    //     type: 1,
    //     routeName: "PersonInjuredAdjusts",
    //     routePath: "person-injured-adjusts",
    //     component: "coordinate-manage/claims-adjuster/person-injured-adjusts/index",
    //     perm: "person-injured-adjusts",
    //     visible: 1,
    //     sort: 4,
    //     icon: "role",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "fa19fdfd23e744d3aa76b9f053cbf9a5",
    //     createdAt: "2025-09-28T09:59:52.465+08:00",
    //     updatedAt: "2025-09-28T09:59:52.465+08:00",
    //     deletedAt: null,
    //     name: "已生效保全",
    //     parentId: "f0fed2b68cde42bbb07976c30f6ce624",
    //     type: 1,
    //     routeName: "EffectiveSave",
    //     routePath: "effective-save",
    //     component: "business-manage/save-manage/effective-save/index",
    //     perm: "effective-save",
    //     visible: 1,
    //     sort: 4,
    //     icon: "tree",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "e56c1b9c97ca4cf9b6e23e9139bc9a3c",
    //     createdAt: "2025-09-27T20:14:26.872+08:00",
    //     updatedAt: "2025-09-27T20:14:26.872+08:00",
    //     deletedAt: null,
    //     name: "逾期预警管理",
    //     parentId: "c26ec6702f1048199bacbc01c58ef65b",
    //     type: 1,
    //     routeName: "OverdueWarnManage",
    //     routePath: "overdue-warn-manage",
    //     component: "business-manage/overdue-warn-manage/index",
    //     perm: "overdue-warn-manage",
    //     visible: 1,
    //     sort: 4,
    //     icon: "tree",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "1b67ee46f20d488fa510897b2b73764e",
    //     createdAt: "2025-09-23T23:01:56.862+08:00",
    //     updatedAt: "2025-09-23T23:01:56.862+08:00",
    //     deletedAt: null,
    //     name: "查勘管理(定损)",
    //     parentId: "68214405bcac44899bc23e3165b97392",
    //     type: 1,
    //     routeName: " SurveyManageLoss",
    //     routePath: "survey-manage-loss",
    //     component: "/coordinate/survey-manage-loss/index",
    //     perm: "survey-manage-loss",
    //     visible: 1,
    //     sort: 4,
    //     icon: "search",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "bca807a40af1470f870620113446d652",
    //     createdAt: "2025-09-23T23:17:26.711+08:00",
    //     updatedAt: "2025-09-23T23:17:39.156+08:00",
    //     deletedAt: null,
    //     name: "人伤定损",
    //     parentId: "fd851a7583404be89adc74c61b318b68",
    //     type: 1,
    //     routeName: "PersonInjuredLoss",
    //     routePath: "person-injured-loss",
    //     component: "coordinate-manage/loss-manage/person-injured-loss/index",
    //     perm: "person-injured-loss",
    //     visible: 1,
    //     sort: 4,
    //     icon: "role",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "aca6cf26d40d4df49559aaf026a7e548",
    //     createdAt: "2025-09-19T18:53:12.048+08:00",
    //     updatedAt: "2025-09-27T09:55:15.204+08:00",
    //     deletedAt: null,
    //     name: "角色管理",
    //     parentId: "8e0e6728641a4e9f8c460ab84a849654",
    //     type: 1,
    //     routeName: "Role",
    //     routePath: "role",
    //     component: "org/role/index",
    //     perm: "org-role",
    //     visible: 1,
    //     sort: 4,
    //     icon: "role",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "system",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "842beb6ecbbf4830a36ef5db4fe0e3b6",
    //     createdAt: "2025-09-28T10:06:57.76+08:00",
    //     updatedAt: "2025-09-28T10:06:57.76+08:00",
    //     deletedAt: null,
    //     name: "客户",
    //     parentId: "0",
    //     type: 2,
    //     routeName: "",
    //     routePath: "/custom",
    //     component: "",
    //     perm: "custom",
    //     visible: 1,
    //     sort: 4,
    //     icon: "client",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "da82bcc37ffc482398e7234cba48ff19",
    //     createdAt: "2025-09-27T20:23:10.765+08:00",
    //     updatedAt: "2025-09-27T20:23:10.765+08:00",
    //     deletedAt: null,
    //     name: "影像资料管理",
    //     parentId: "c26ec6702f1048199bacbc01c58ef65b",
    //     type: 2,
    //     routeName: "",
    //     routePath: "video-data-manage",
    //     component: "",
    //     perm: "video-data-manage",
    //     visible: 1,
    //     sort: 5,
    //     icon: "todo",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "9be85f2d19a741eb94770cd4e2e729be",
    //     createdAt: "2025-09-23T23:04:04.056+08:00",
    //     updatedAt: "2025-09-23T23:04:04.056+08:00",
    //     deletedAt: null,
    //     name: "核损管理",
    //     parentId: "68214405bcac44899bc23e3165b97392",
    //     type: 1,
    //     routeName: "CheckLossManage",
    //     routePath: "check-loss-manage",
    //     component: "coordinate-manage/coordinate/check-loss-manage/index",
    //     perm: "check-loss-manage",
    //     visible: 1,
    //     sort: 5,
    //     icon: "monitor",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "f0fed2b68cde42bbb07976c30f6ce624",
    //     createdAt: "2025-09-28T09:31:19.382+08:00",
    //     updatedAt: "2025-09-28T09:31:19.382+08:00",
    //     deletedAt: null,
    //     name: "保全管理",
    //     parentId: "c26ec6702f1048199bacbc01c58ef65b",
    //     type: 2,
    //     routeName: "",
    //     routePath: "save-manage",
    //     component: "",
    //     perm: "save-manage",
    //     visible: 1,
    //     sort: 6,
    //     icon: "gitcode",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "3f21e62d2a8e4d729b65ab283d4ddf89",
    //     createdAt: "2025-09-23T23:05:22.692+08:00",
    //     updatedAt: "2025-09-23T23:05:22.692+08:00",
    //     deletedAt: null,
    //     name: "视频查勘管理",
    //     parentId: "68214405bcac44899bc23e3165b97392",
    //     type: 1,
    //     routeName: "VideoSurveyManageLoss",
    //     routePath: "video-survey-manage-loss",
    //     component: "coordinate-manage/coordinate/video-survey-manage-loss/index",
    //     perm: "video-survey-manage-loss",
    //     visible: 1,
    //     sort: 6,
    //     icon: "system",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    //   {
    //     id: "874a8adf353e442e82c2c3385c8de49e",
    //     createdAt: "2025-09-23T23:06:41.501+08:00",
    //     updatedAt: "2025-09-23T23:06:41.501+08:00",
    //     deletedAt: null,
    //     name: "统筹出险单查询",
    //     parentId: "68214405bcac44899bc23e3165b97392",
    //     type: 1,
    //     routeName: "CoordinateAccidentClaimInquiry",
    //     routePath: "coordinate-accident-claim-inquiry",
    //     component: "coordinate-manage/coordinate/coordinate-accident-claim-inquiry/index",
    //     perm: "coordinate-accident-claim-inquiry",
    //     visible: 1,
    //     sort: 7,
    //     icon: "language",
    //     redirect: "",
    //     keepAlive: 1,
    //     alwaysShow: 0,
    //     params: "",
    //     creator: "879726b72a9a4ecbb85d667a12a6d4ea",
    //     updater: "879726b72a9a4ecbb85d667a12a6d4ea",
    //   },
    // ];

    // return new Promise((resolve) => {
    //   resolve(mockData);
    // });

    return request<any, RouteVO[]>({ url: `${MENU_BASE_URL}`, method: "get" });
    // return request<any, RouteVO[]>({ url: `${MENU_BASE_URL}/tree`, method: "get" });
  },
  /** 获取菜单树形列表 */
  getList(queryParams: MenuQuery) {
    return request<any, MenuVO[]>({ url: `${MENU_BASE_URL}`, method: "get", params: queryParams });
  },
  getMenuTree(queryParams?: MenuQuery) {
    return request<any, MenuVO[]>({
      url: `${MENU_BASE_URL}/tree`,
      method: "get",
      params: queryParams,
    });
  },
  /** 获取菜单下拉数据源 */
  // getOptions(onlyParent?: boolean) {
  //   return request<any, OptionType[]>({
  //     url: `${MENU_BASE_URL}/options`,
  //     method: "get",
  //     params: { onlyParent },
  //   });
  // },
  getOptions(id?: string) {
    return request<any, OptionType[]>({
      url: `${MENU_BASE_URL}/${id}`,
      method: "get",
      // params: { id },
    });
  },
  /** 获取菜单表单数据 */
  getFormData(id: string) {
    return request<any, MenuForm>({ url: `${MENU_BASE_URL}/${id}/form`, method: "get" });
  },
  /** 新增菜单 */
  create(data: MenuForm) {
    return request({ url: `${MENU_BASE_URL}`, method: "post", data });
  },
  /** 修改菜单 */
  update(id: string, data: MenuForm) {
    return request({ url: `${MENU_BASE_URL}/${id}`, method: "put", data });
  },
  /** 删除菜单 */
  deleteById(id: string) {
    return request({ url: `${MENU_BASE_URL}/${id}`, method: "delete" });
  },

  // 获取用户的菜单权限
  getUserMenus(queryParams: MenuQuery) {
    return request<any, MenuVO[]>({
      url: `${MENU_BASE_URL}/user`,
      method: "get",
      params: queryParams,
    });
  },
};

export default MenuAPI;

export interface MenuQuery {
  /** 搜索关键字 */
  // keywords?: string;
  [property: string]: any;
}
import type { MenuTypeEnum } from "@/enums/system/menu.enum";
import { string } from "vue-types";
export interface MenuVO {
  /** 子菜单 */
  children?: MenuVO[];
  /** 组件路径 */
  component?: string;
  /** ICON */
  icon?: string;
  /** 菜单ID */
  id?: string;
  /** 菜单名称 */
  name?: string;
  /** 父菜单ID */
  parentId?: string;
  /** 按钮权限标识 */
  perm?: string;
  /** 跳转路径 */
  redirect?: string;
  /** 路由名称 */
  routeName?: string;
  /** 路由相对路径 */
  routePath?: string;
  /** 菜单排序(数字越小排名越靠前) */
  sort?: number;
  /** 菜单类型 */
  type?: MenuTypeEnum;
  /** 是否可见(1:显示;0:隐藏) */
  visible?: number;
}
export interface MenuForm {
  /** 菜单ID */
  id?: string;
  /** 父菜单ID */
  parentId?: string;
  /** 菜单名称 */
  name?: string;
  /** 是否可见(1-是 0-否) */
  visible: number;
  /** ICON */
  icon?: string;
  /** 排序 */
  sort?: number;
  /** 路由名称 */
  routeName?: string;
  /** 路由路径 */
  routePath?: string;
  /** 组件路径 */
  component?: string;
  /** 跳转路由路径 */
  redirect?: string;
  /** 菜单类型 */
  type?: MenuTypeEnum;
  /** 权限标识 */
  perm?: string;
  /** 【菜单】是否开启页面缓存 */
  keepAlive?: number;
  /** 【目录】只有一个子路由是否始终显示 */
  alwaysShow?: number;
  /** 其他参数 */
  params?: KeyValue[];
}
interface KeyValue {
  key: string;
  value: string;
}
export interface RouteVO {
  /** 子路由列表 */
  children: RouteVO[];
  /** 组件路径 */
  component?: string;
  /** 路由属性 */
  meta?: Meta;
  /** 路由名称 */
  name?: string;
  /** 路由路径 */
  path?: string;
  /** 跳转链接 */
  redirect?: string;
}
export interface Meta {
  /** 【目录】只有一个子路由是否始终显示 */
  alwaysShow?: boolean;
  /** 是否隐藏(true-是 false-否) */
  hidden?: boolean;
  /** ICON */
  icon?: string;
  /** 【菜单】是否开启页面缓存 */
  keepAlive?: boolean;
  /** 路由title */
  title?: string;
}
